﻿#pragma once
#include "zyDialogBase.h"

namespace BlackMoonUI {

	class zyFontDialog : public  zyDialogBase
	{
	public:
		zyFontDialog();
		~zyFontDialog();
		static LRESULT WINAPI zyFontDialog_WndProc(zyObject* obj, HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL* bHandle);
		static LRESULT CALLBACK CFHookProc(HWND hdlg, UINT message, WPARAM wParam, LPARAM lParam);
		bool 打开(HWND 参数_父窗口 = NULL);

		void 初始化(int 参数_选项 = NULL, LPLOGFONTW 参数_字体 = NULL, int 参数_初始颜色 = NULL, int 参数_最小尺寸 = NULL, int 参数_最大尺寸 = NULL);
		LPLOGFONTW 取字体();
		std::wstring 取字体名称();
		//字体对话框.初始化（）时，设置了"字体对话框_应用按钮"选项，可在"事件_应用按钮被单击"，调用此方法，返回选择的字体。
		LOGFONT* 取字体应用();
		//字体对话框.初始化（）时 "参数_选项"包含"字体对话框_效果"，可获取颜色值
		COLORREF 取字体颜色();
		int 取字体大小();
		WORD 取字体类型();
		//返回值：无 （整数型 按钮窗口句柄，整数型 按钮ID） 备注：字体对话框.初始化（）时，设置"字体对话框_应用按钮"选项，则有应用按钮
		void 事件_应用按钮被单击(TRegEvent* 参数_事件指针);
	};

}

